85e034b
@@ -35,13 +35,21 @@
public class DataSetFlinkProducer extends DefaultProducer {
         Object body = exchange.getIn().getBody();
 
         Object result;
-        if (body instanceof List) {
-            List list = (List) body;
-            Object[] array = list.toArray(new Object[list.size()]);
-            result = dataSetCallback.onDataSet(ds, array);
-        } else {
-            result = dataSetCallback.onDataSet(ds, body);
+        
+        ClassLoader tccl = Thread.currentThread().getContextClassLoader();
+        try {
+            Thread.currentThread().setContextClassLoader(DataSet.class.getClassLoader());
+            if (body instanceof List) {
+                List list = (List) body;
+                Object[] array = list.toArray(new Object[list.size()]);
+                result = dataSetCallback.onDataSet(ds, array);
+            } else {
+                result = dataSetCallback.onDataSet(ds, body);
+            }
+        } finally {
+            Thread.currentThread().setContextClassLoader(tccl);
         }
+        
         collectResults(exchange, result);
     }
 
